import OpenAI from "openai";
import fs from "fs/promises";

const openai = new OpenAI({
  //   baseURL: "https://api.deepseek.com",
  baseURL: "http://127.0.0.1:8000/v1",
  apiKey: "EJ3NRODNPG3KkbVtjSHjz5QXHT/HdUaLbUvvYEwqXOIxKTwpOJwCPxx217TiXNCP",
});

async function main() {
  const data = await fs.readFile("T1001.002.json", "utf-8");
  console.log(data);

  const completion = await openai.chat.completions.create({
    messages: [
      {
        role: "system",
        content: `你是一名专业的安全行业翻译人员，擅长将英文技术文档、安全报告、行业标准等内容准确翻译为中文。请将以下英文文本翻译为中文，确保术语准确、语言流畅，并符合安全行业的专业表达习惯。翻译时请注意上下文语境，避免直译导致的歧义或误解。 请将翻译后的以 JSON 的形式输出，放入 <json> 标签中，不要包含任何额外的解释或处理逻辑
    <json>
    [
      "翻译后的中文"
    ]
    </json>`,
      },
      {
        role: "user",
        content: JSON.stringify(data),
      },
    ],
    model: "deepseek-chat",
  });

  console.log(completion.choices[0].message.content);
  let result;
  try {
    console.log(completion.choices[0].message.content);

    // 提取<json></json>标签中的内容
    const match =
      completion.choices[0].message.content.match(/<json>(.*?)<\/json>/s);

    if (match) {
      result = JSON.parse(match[1]);
    }

    // result = JSON.parse(completion.choices[0].message.content)
  } catch (e) {
    console.error(e, {
      content: completion.choices[0].message.content,
      texts,
    });
    throw e;
  }

  fs.writeFile("output.json", JSON.stringify(result, null, 2));

  return result;
}

main();
